Communications system with automatic data delete function and computer program used for the system

ABSTRACT

A communications control method is provided for managing a communications system that includes an external network such as the Internet, an internal network and a router. A plurality of clients are connectable to the external network, while a server is connected to the internal network. The external network and the internal network are connected to each other via the router. In accordance with the communication control method, data sent from the client toward the server is stored in a suitable memory. Then, it is determined whether the stored data meets the prescribed delete condition. When this condition is met, the data is deleted from the memory.

BACKGROUND OF THE INVENTION

[0001] 1. Field of the Invention

[0002] The present invention relates to a communications system thatutilizes networks and operates based on Internet Protocol. Further, thepresent invention relates to a method of controlling the communicationssystem, and to a computer program used for managing the communicationssystem.

[0003] 2. Description of the Related Art

[0004] Networks based on Internet Protocol (‘IP’) have been used for adata communications system involving clients and servers connected toeach other. Through the networks, each client can obtain various kindsof information. For instance, the client can view home pages and send orreceive messages by E-mail. Upon receiving a request from the client,the server automatically sends back desired information to the client.

[0005] In the communications system, data congestion may occur when manyclients try to access one particular server simultaneously. If suchaccess concentration occurs, the supply of information to the clientfrom the server may delay, and the quality of service by the server willdeteriorate. What is worse, the amount of data to be process can bebeyond the server's capacity, thereby breaking down the whole system.

[0006] Once the system stops functioning properly, the clients, who haveno effective countermeasures against it, cannot help waiting for thesystem to return to the normal state. On the side of the server, torestore the system, the requests supplied from the clients may partiallyor entirely discarded, so that the amount of the work to be done isreduced below the server's capacity. Apparently, such destruction of theclients' data is not preferable.

[0007] One way to overcoming the data congestion or access concentrationis to increase the data transfer rate on the networks, or to improve thedata-processing capacity of the server However, the improvement of thedata transfer rate or server's capacity is not a feasible option sinceit will lead to an increase in facility costs and therefore are notfeasible options.

[0008] JP-A-10(1998)-200581 discloses a technique of avoiding IP packetcongestion. Specifically, according to this conventional technique, aplurality of routers disposed between different networks are adjusted sothat their data-receiving rate is reduced. This makes the data transferscarcer, and therefore contributes to the prevention of IP packetcongestion.

[0009] The above conventional technique, however, cannot prevent accessconcentration on a router or server. What is worse, once the accessconcentration occurs at a particular router for example, the networkapparatuses adjacent (in a network-topological sense) to the router willbe affected by the access concentration. For instance, thedata-processing speed of the adjacent network apparatus can becomeunacceptably slower.

SUMMARY OF THE INVENTION

[0010] The present invention has been proposed under the circumstancesdescribed above. It is, therefore, an object of the present invention toprovide a communications system whereby access concentration on aparticular server and data congestion on the networks are eliminated.The present invention also relates to a computer program used formanaging such a communications system.

[0011] According to a first aspect of the present invention, there isprovided a communications control method for a communications systemthat includes: an external network connected to a client; an internalnetwork connected to a server; and a router connecting the externalnetwork and the internal network to each other. The method includes thesteps of: storing data sent from the client toward the server;determining whether the stored data meets a delete condition; anddeleting the stored data when the delete condition is met.

[0012] Preferably, the method may further include the steps of:searching pieces of data sent from the client toward the server;determining whether said pieces of data contain identical messages; anddeleting a redundant message when identical messages are found.

[0013] Preferably, the data deletion may be performed when an amount ofdata on the internal network is greater than a prescribed threshold.

[0014] Preferably, the data deletion may be performed when the storeddata contains no sender address.

[0015] The method of the present invention may further include the stepsof: sending response data from the server toward the client; anddetecting a data transfer rate on the external network. The responsedata is thinned out when the data transfer rate is reduced.

[0016] According to a second aspect of the present invention, there isprovided a communications system that includes: an external networkconnected to a client; an internal network connected to a server; arouter connecting the external network and the internal network to eachother; and a processor connected to the router for storing data sentfrom the client toward the server. The processor deletes the stored datawhen the stored data meets a predetermined delete condition.

[0017] Preferably, the processor may store several pieces of data sentfrom the client toward the server. In this case, when a redundantmessage is found among the stored pieces of data, the processor deletesthe redundant message.

[0018] Preferably, the system of the present invention may furtherinclude a router controller that determines whether an amount of data onthe internal network is greater than a prescribed threshold. When theabove-mentioned amount of data is greater than the predeterminedthreshold, the data deletion is performed by the processor. Theprocessor may delete anonymous data that contains no sender address.

[0019] Preferably, the system of the present invention may furtherinclude a router controller for detecting a data transfer rate on theexternal network. When the data transfer rate is reduced, response datasent from the server toward the client is thinned out.

[0020] According to a third aspect of the present invention, there isprovided a computer program for a communications system that includes:an external network connected to a client; an internal network connectedto a server; a router connecting the external network and the internalnetwork to each other; and a processor connected to the router. Thecomputer program executes the steps of: causing the processor to storedata sent from the client toward the server; and causing the processorto delete the stored data when the stored data meets a delete condition.

[0021] Preferably, the program may further execute the step ofdetermining whether the stored data contains a redundant message. Aredundant message if any is deleted by the processor.

[0022] Preferably, the program may further execute the step ofdetermining whether an amount of data on the internal network is greaterthan a prescribed threshold. When the above-mentioned amount of data isgreater than the threshold, the data meeting the delete condition isdeleted by the processor.

[0023] Preferably, in accordance with the program of the presentinvention, anonymous data containing no sender address is deleted by theprocessor.

[0024] Preferably, the program of the present invention may furtherexecute the steps of: detecting a data transfer rate on the externalnetwork; and thinning out, when the data transfer rate is reduced,response data sent form the server toward the client.

[0025] According to the present invention, redundant or impropermessages (including data, instructions, requirement, texts, etc.) aredeleted from the data sent from the client toward the server. Thisprevents the data increase on the networks, thereby ensuring a smoothdata transfer operation. As a result, the access concentration on aserver and data congestion on a network are advantageously suppressed,so that the client can obtain a quick response from the server.

[0026] Other features and advantages of the invention of the presentapplication will become more apparent from the following description ofpreferred embodiments of the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

[0027]FIG. 1 shows the basic structure of a communications systemaccording to the present invention;

[0028]FIG. 2 is a flow chart illustrating the basic operations performedby the communications system of FIG. 1; and

[0029]FIG. 3 is a diagram showing the data flow and the data-processingoperations for the communications system of FIG. 1.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

[0030] The preferred embodiment of the present invention will bedescribed below with reference to the accompanying drawings.

[0031]FIG. 1 illustrates the basic concept of a communications systemaccording to the present invention. The system includes a plurality ofclients 1, an external network 2 (such as the Internet) to which theclients 1 are connectable, a provider apparatus 3 connected to thenetwork 2, a router (or ‘server node gateway’) 4 connected to theapparatus 3, a processor 5 connected to the router 4 and provided with abuffer pool 6, an internal server network 7 connected to the router 4, arouter controller 8 connected to the server network 7 for controllingthe router 4, and servers S connected to the server network 7. In theillustrated example, the servers S include a WWW server 9 and anapplication server 10, though the present invention is not limited tothis configuration. For instance, a file server, a mail server, a printserver may be connected to the server network 7.

[0032] The clients 1 may be personal computers installed in work placesor homes. The clients 1, as operated by the users, can access theservers S for viewing homepages or sending messages electronically(E-mail) for example.

[0033] The provider apparatus 3 is provided for connecting the clients 1to the servers S via the relevant networks. The provider apparatus 3 isoperated and managed by a communications service agency called‘provider’.

[0034] The router 4 connects the provider apparatus 3 to the servernetwork (or inner network) 7. The IP addresses of the respective serversS are assigned to the router 4. The router 4 is responsible forcontrolling the data transfer between the clients 1 and the servers S.

[0035] The processor 5 is typically a personal computer and connected tothe buffer pool 6 which may be a mass storage device incorporating ahard disk. As will be described in detail later, the processor 5, basedon the instruction from the router controller 8, causes the data sentfrom the clients 1 to be temporarily stored in the buffer pool 6. Theprocessor 5 also deletes unnecessary data stored in the buffer pool 6.

[0036] The router controller 8, connected to the server network 7,controls the router 4, the processor 5 and the servers S. The routercontroller 8 monitors both the condition of data congestion on theserver network 7 and the data-processing load on the WWW server 9.Further, the router controller 8 supplies instructions to the processor5 for causing the processor 5 to output data stored in the buffer pool 6to the server network 7.

[0037] The WWW server 9, connected to the server network 7, providesvarious kinds of services to the clients 1. The WWW server 9 is providedwith a microcomputer and a memory (both not shown) for storing homepagedata.

[0038] The application server 10, connected to the server network 7,provides various kinds of services to the clients 1. The applicationserver 10 is provided with a microcomputer and a memory (both not shown)for storing application software data.

[0039] Referring now to FIGS. 2 and 3, the operation of the abovecommunications system will be described below.

[0040] As an example, a user operates his or her personal computer (aclient 1) in an attempt to access the WWW server 9. As properlyoperated, the client 1 produces electronic data for specifying thelocation of the desired homepage, a command for downloading thehomepage, and so on. These data and command (inclusively called“client-originating data” hereinafter) are converted into IP packets andsent out to the external network 2 (S1). The IP packets are then sent tothe router 4 via the provider apparatus 3. The router 4 receives the IPpackets (S2) and stores them in its buffer (not shown).

[0041] While recognizing the router's reception of the IP packets, therouter controller 8 determines whether data congestion is likely tooccur on the server network 7 (S3). Specifically, the router controller8 monitors the data transfer rate of the IP packets on the servernetwork 7. When the transfer rate is below the prescribed value orlikely to be below it, the router controller 8 determines that datacongestion will occur.

[0042] When determining that data congestion will occur on the servernetwork 7 (S3:YES), the router controller 8 instructs the router 4 tosend the IP packets to the processor 5.

[0043] Upon receiving the instructions from the router controller 8, therouter 4 transfers the IP packets stored in its buffer to the processor5 (S4). According to the present invention, the arrangements may be madeso that the IP packets from the external network 2 are sent to theprocessor 5 directly, that is, without being stored in the buffer of therouter 4.

[0044] At Step 3, when the router controller 8 determines that no datacongestion will occur on the server network 7 (S3:NO), the controller 8instructs the router 4 to send the IP packets to the WWW server 9. Uponreceiving such instructions, the router 4 sends the IP packets stored inits buffer to the WWW server 9 (S5).

[0045] The processor 5 checks the validity of the IP packets sent fromthe router 4 at Step 4. Specifically, the processor 5 determines whetherthe IP packets contain the complete IP address of the sender (S6). Whenthe processor 5 finds that the sender address is missing or incomplete(S6:NO), the IP packets are deleted (S7).

[0046] The reason why an IP packet having no proper IP address of thesender should be deleted is as follows. When someone ties to obstructthe data communication service by sending invalid data, the obstructerwill want to keep his deed anonymous so as to evade any possiblepunishment for example. Therefore, when an IP packet is found to lack aproper IP address, it is most likely to come from an ill-intentionedperson. Thus, the processor can delete such unidentified data withoutcausing any disadvantage on the side of the data receiver.

[0047] In the above example, data is to be deleted when it lacks ansender address. Alternatively, the data deletion may be carried out whensome other information is missing in the data.

[0048] At Step 6, when the processor 5 determines that the IP address ofthe sender is valid (S6:YES), the processor 5 reconverts theclient-originating data from the IP packets sent from the router 4. Thereconverted data is stored in the buffer pool 6 (S8). At this stage, theIP address of the sender, the IP address of the receiver, the protocolinformation (necessary for conversion into the IP packet), etc., arealso stored in the buffer pool 6.

[0049] Thereafter, the processor 5 deletes redundant messages from theclient-originating data. Specifically, the processor 5 searches thebuffer pool 6 to find if it contains identical messages (requests,instructions, etc.) issued from the same client 1 (S9). When two or moreidentical messages are found to come from the same client 1, theprocessor 5 saves only one of them but deletes all the other ones (S10).

[0050] The data redundancy may result from the following situation. Whenaccess concentration occurs on the external network 2 or the servernetwork 7, the response from the WWW server 9 becomes slower. Then, asbecoming irritated by the slow response from the server 9, the user of aclient 1 tends to issue the same instruction twice or more. Theseidentical instructions themselves are valid data since they have thecorrect IP address of the sender. However, in a sense that they have thesame content, they are redundant data for the WWW server 9 and theparticular client 1. Such redundancy can worsen the data-congestedsituation caused by access concentration.

[0051] In accordance with the above-described embodiment of the presentinvention, the redundant pieces of data from the same sender are deletedby the processor 5. Thus, the data-processing work that the WWW server 9should perform may be reduced by 50% or more. In this way, the timetaken by the server 9 to perform the data-processing can be shorterdespite the access concentration. Specifically, in the conventionalsystem, the data-processing time tends to be ten times longer at thetime of access concentration than in a normal situation. In the aboveembodiment, the data-processing can be performed much faster.

[0052] In accordance with the present invention, the data sent from theclient 1 is temporarily stored in the buffer pool 6 (before it isforwarded to the WWW server 9) and redundant data, if any, is deletedfrom the buffer pool 6. Accordingly, the WWW server 9 will not beflooded with a lot of work to do beyond the server's capacity. Further,data transfer can be performed smoothly on the server network 7 withoutsuffering data congestion.

[0053] In the conventional system, once a lot of access concentrates onthe WWW server 9, the adverse effect can spread over the other networks.In the above preferred embodiment of the present invention, the datatransfer will proceed smoothly, since the client's access requirement ismanaged by the router 4 and the processor 5 before it is sent to theserver 9. Thus, impermissible access concentration or data congestionwill not occur on the server network 7 nor the other networks.

[0054] At Step 11, the router controller 8 checks for an overload on theserver network 7 and the WWW server 9. When the router controller 8finds that there is no overload (S12:YES), it instructs the processor 5to send the undeleted portion of the client-originating data to the WWWserver 9. When the router controller 8 finds that there is an overload(S12:NO), the controller will perform another overload checking withrespect to the server network 7 and the WWW server 9 in a prescribedperiod of time (S13:YES).

[0055] In accordance with the instruction from the router controller 8,the processor 5 retrieves the undeleted pieces of data from the bufferpool 6 one after another. The data retrieval may be performed in aforward order (first-in, first-out) or in a reverse order (last-in,first-out). The retrieved data is converted into IP packets and thensent to the buffer of the router 4.

[0056] Thereafter, the router 4 forwards the received data (IP packets)to the WWW server 9 via the server network 7 (S14).

[0057] The WWW server 9 performs required data-processing operationbased on the received IP packets, and then sends an appropriate responseto the relevant client 1. Alternatively, the server 9 may cooperate withthe application server 10 to carry out the received instruction. In thiscase, upon receiving the IP packets from the router 4, the server 9 maysend an instruction to the application server 10 for causing the server10 to perform a certain job. After this job is done by the server 10,the result is sent to the WWW server 9. In accordance with the receivedresult, the WWW server 9 may send appropriate data (response) to theclient 1.

[0058] In accordance with the present invention, the response suppliedto the client 1 from the server 9 is partially omitted in a certainsituation, as described below.

[0059] Specifically, based on the information supplied from the providerapparatus 3, the router controller 8 detects the data transfer rate onthe external network 2 (S15). Then, the controller 8 determines whetherthe transfer rate exceeds a prescribed threshold (S16). When thetransfer rate is below the threshold (S16:NO), the router controller 8instructs the WWW server 9 to reduce the amount of data to be sent tothe client 1.

[0060] Upon receiving the cutdown instruction from the controller 8, theWWW server 9 thins down the contents of the data to be sent to theclient 1 (S17). For example, when the contents include auxiliaryinformation such as graphic data, the WWW server 9 deletes the auxiliaryinformation and outputs the remaining pieces of data to the network 7(S18) in the form of IP packets.

[0061] When the detected transfer rate is equal to or greater than thethreshold (S16:YES), the server 9 sends the whole IP-packet data to thenetwork 7 without thinning the data.

[0062] Alternatively, in accordance with the present invention, thedata-thinning operation may be performed after the complete data isoutputted to the network 7. In this case, the whole data outputted fromthe WWW server 9 may be temporarily stored in the buffer pool 6, andthen subjected to the partial data deletion based on the instructionfrom the router controller 8.

[0063] With the above scheme, the content of the response data can belightened. This is advantageous to reducing the load exerting on thenetworks.

[0064] As readily understood, the above-described various operations inthe communications system can be realized by a computer program.

[0065] Specifically, a computer program may be designed to execute thestep of causing the processor to store data sent from the client towardthe server, and the step of causing the processor to delete the storeddata when the stored data meets a delete condition.

[0066] Further, the program may be designed to execute a step ofdetermining whether the stored data contains a redundant message. Whenthe redundant message is found among the stored data, it will be deletedby the processor.

[0067] Further, the program may be designed to execute the step ofdetermining whether an amount of data on the internal network is greaterthan a prescribed threshold. When the data on the internal network isfound greater than the threshold, the data meeting the delete conditionwill be deleted by the processor

[0068] The program may be designed to cause the processor to deleteanonymous data containing no sender address.

[0069] Further, the program may be designed to execute the step ofdetecting a data transfer rate on the external network, and the step ofthinning out response data sent form the server toward the client. Itshould be noted that this thinning-out step is performed when the datatransfer rate is reduced, thereby hindering smooth data transfer on theexternal network.

[0070] The present invention is not limited to the above-describedembodiment. For instance, the router 4, the processor 5 and the bufferpool 6 may be integrated into a single unit.

[0071] The present invention being thus described, it is obvious thatthe same may be varied in many ways. Such variations are not to beregarded as a departure from the spirit and scope of the presentinvention, and all such modifications as would be obvious to thoseskilled in the art are intended to be included within the scope of thefollowing claims.

1. A communications control method for a communications systemincluding: an external network connected to a client; an internalnetwork connected to a server; and a router connecting the externalnetwork and the internal network to each other; the method comprisingthe steps of: storing data sent from the client toward the server;determining whether the stored data meets a delete condition; anddeleting the stored data when the delete condition is met.
 2. The methodaccording to claim 1, further comprising the steps of: searching piecesof data sent from the client toward the server; determining whether saidpieces of data contain identical messages; and deleting a redundantmessage when identical messages are found.
 3. The method according toclaim 1, wherein the data deletion is performed when an amount of dataon the internal network is greater than a prescribed threshold.
 4. Themethod according to claim 1, wherein the data deletion is performed whenthe stored data contains no sender address.
 5. The method according toclaim 1, further comprising the steps of: sending response data from theserver toward the client; and detecting a data transfer rate on theexternal network; wherein the response data is thinned out when the datatransfer rate is reduced.
 6. A communications system comprising: anexternal network connected to a client; an internal network connected toa server; a router connecting the external network and the internalnetwork to each other; and a processor connected to the router forstoring data sent from the client toward the server; wherein theprocessor deletes the stored data when the stored data meets a deletecondition.
 7. The system according to claim 6, wherein the processorstores pieces of data sent from the client toward the server, anddeletes a redundant message among said pieces of data.
 8. The systemaccording to claim 6, further comprising a router controller thatdetermines whether an amount of data on the internal network is greaterthan a prescribed threshold, wherein the data deletion by the processoris performed when said amount of data is greater than the threshold. 9.The system according to claim 6, wherein the processor deletes anonymousdata containing no sender address.
 10. The system according to claim 6,further comprising a router controller for detecting a data transferrate on the external network, wherein response data sent from the servertoward the client is thinned out when the data transfer rate is reduced.11. A computer program for a communications system including: anexternal network connected to a client; an internal network connected toa server; a router connecting the external network and the internalnetwork to each other; and a processor connected to the router; theprogram executing the steps of: causing the processor to store data sentfrom the client toward the server; and causing the processor to deletethe stored data when the stored data meets a delete condition.
 12. Theprogram according to claim 11, further executing the step of determiningwhether the stored data contains a redundant message, wherein theredundant message is deleted by the processor.
 13. The program accordingto claim 11, further executing the step of determining whether an amountof data on the internal network is greater than a prescribed threshold,wherein the data meeting the delete condition is deleted by theprocessor when said amount of data is greater than the threshold. 14.The program according to claim 11, wherein anonymous data containing nosender address is deleted by the processor.
 15. The program according toclaim 11, further executing the steps of: detecting a data transfer rateon the external network; and thinning out, when the data transfer rateis reduced, response data sent form the server toward the client.